Link aggregation is a term utilized in the field of computer networking to describe processes for using multiple network connections (i.e., links) in parallel (i.e., in an aggregated manner) to increase the throughput of a network element. Use of multiple network connections in place of a single connection provides a higher throughput than the single connection could sustain. The use of link aggregation also provides redundancy in case one of the links fails. The throughput may be diminished in the case of a single link failure, but the connectivity will not be lost because the other links continue to service the communication between a source and destination node where link aggregation is supported.
Link aggregation, as described in the Institute of Electrical and Electronics engineers (IEEE) standard 802.3ad, binds multiple physical ports of a network element into a single, larger capacity logical port called a Link Aggregation group (LAG). The interface between the incoming data flows and the LAG in a particular network element can be referred to as a LAG interface. A LAG can service any number of data flows (i.e., a set of related data packets typically between a specific source node and destination node). Usually, the data flows are distributed across the constituent links of a LAG interface by a hashing function. The input to the hash function is an N-tuple, which is derived from some fixed attributes of the packets like level two and level 3 (L2/L3) header fields. Where level two and level three refer to the open systems interconnection (OSI) model. Once a data flow is bound to an output port of a LAG, it remains associated with it until the time it is active. The hashing method and fixed data flow output port binding ensures that there is no packet re-ordering due to transmission over the aggregated interface.